<gm:page title="Accès Element XLM au Choix avec getElementsByTagName" authenticate="false">
 
  
     <!-- getElementsByTagName()
     Accède, conformément à la variante XML du modèle DOM à un élément au 
     choix dans l'arborescence d'éléments du document. Le nom d'élément est
     ici déterminant, en HTML par exemple des noms comme "h1", "blockquote" 
     ou bien "img". Pour chaque type d'élément HTML est créé un tableau 
     (Array) dans le document, par lequel les différents éléments peuvent 
     être adressés.
 
     Malheureusement, cette méthode du modèle DOM n'est pas prévu dans la 
     variante HTML, pourtant elle fonctionne malgré tout avec les 
     interpréteurs JavaScript des navigateurs plus récents. C'est pourquoi, 
     elle est décrite ici - à la différence des autres propriétés et méthodes
     de l'objet "document" - dans la variante XML du modèle DOM. 
 
     Dans exemple ci-dessous, sont notés un titre N°1 et trois paragraphes
     de texte. Aucun de ces éléments ne contient le moindre attribut, par 
     lequel il pourrait être adressé individuellement. Au dessous est noté 
     un lien qui appelle, quand il est cliqué la fonction nouveautexte()"
     qui est notée dans l'entête de fichier. Cette fonction modifie de 
     façon dynamique les textes des trois paragraphes et du titre. 
     - Par "document.getElementsByTagName("p")[0]" elle accède au premier 
       paragraphe de texte du document, 
     - par "document.getElementsByTagName("p")[1]" au deuxième, 
     - par "document.getElementsByTagName("h1")[0]" au premier titre N°1 
     etc... 
 
    Attention:
    La méthode "getElementsByTagName(") régit en fin de compte l'accès 
    aux éléments. Pour savoir ce que vous pouvez faire avec quels éléments
    HTML, vous pouvez avoir une vue d'ensemble dans la partie sur les  
    Objets éléments HTML. Les autres possibilités d'influencer de façon 
    dynamique les éléments HTML sont offertes par l'objet "node". La 
    propriété "firstChild.data", utilisée dans l'exemple ci-dessous pour 
    modifier de façon dynamique le texte contenu dans l'élément, fait 
    partie elle-aussi du complexe de l'objet "node".
 
    Opera 5.12 connaît également la méthode "getElementsByTagName()" pour 
    adresser des éléments. L'exemple ci-dessous ne fonctionne cependant 
    pas avec ce navigateur.-->
 
    <!-- Déclaration fonction -->
     <HEAD>
     <style type="text/css"> 
     
     .normal { font-style:normal }
     
     </style>
 
     <script type="text/javascript">
     <!-- 
     function nouveautexte() { 
     document.getElementsByTagName("p")[0].firstChild.data = "nouveau premier"; 
     document.getElementsByTagName("p")[1].firstChild.data = "nouveau deuxième"; 
     document.getElementsByTagName("p")[2].firstChild.data = "nouveau troisième"; 
     document.getElementsByTagName("h1")[0].firstChild.data = "Tout change";
     } 
     //-->
     </script>      
                  
     </HEAD>
 
     <!-- Appel fonction -->
     <BODY>
 
     <h1>Dynamique, très dynamique</h1> 
 
     <p>Un premier paragraphe</p>
     <p>Un deuxième paragraphe</p>
     <p>Un troisième paragraphe</p>
     
     <p><A href="javascript:nouveautexte()">Nouveaux textes</A></p>
              
        
  
     </BODY>
 
</gm:page>







